// 神策sdk

import Vue from 'vue'
import sensors from 'sa-sdk-miniprogram'

const sensorsSdk =  {
    init(newConfig = {}){
        const url = {
            development: 'http://10.152.164.64:8081/api/gp?project=clklogapp',
            production: ''
        }
        let config = {
            name: 'sensors',
            server_url: url[process.env.NODE_ENV],
            show_log: process.env.NODE_ENV === 'development',
            // send_type: 'ajax',
            // 全埋点控制开关
            autoTrack:{
                appLaunch: true, // 默认为 true，false 则关闭 $MPLaunch 事件采集
                appShow: true, // 默认为 true，false 则关闭 $MPShow 事件采集
                appHide: true, // 默认为 true，false 则关闭 $MPHide 事件采集
                pageShow: true, // 默认为 true，false 则关闭 $MPViewScreen 事件采集
                pageShare: true, // 默认为 true，false 则关闭 $MPShare 事件采集
                mpClick: true, // 默认为 false，true 则开启 $MPClick 事件采集
                mpFavorite: true, // 默认为 true，false 则关闭 $MPAddFavorites 事件采集
                pageLeave: true // 默认为 false， true 则开启 $MPPageLeave事件采集
            },
        }
        config = Object.assign(config, newConfig)
        sensors.init(config)
    },

    // 获取匿名id
    getAnonymousID(){
        return sensors.getAnonymousID()
    },

    // 添加事件的自定义属性
    // event 事件名 props 属性对象
    setAttr(event, props = {}){
        sensors.track(event, {...props})
    },

    // 给用户添加自定义属性
    setUserAttr(props = {}){
        sensors.setProfile({...props})
    },

    // 给所有事件添加公共属性 init前调用
    setCommonAttr(props = {}){
        sensors.registerApp({...props})
    },
}

export default sensorsSdk

